Today computer systems are more efficient and may be used in a variety of new fields such as medicine, video surveillance etc. In these fields, users make more use of the display device than before for extracting relevant information. Most operating systems running on computer systems provide multi-application environments to the user, meaning that a user may use a plurality of applications simultaneously. In general, a user can have multiple applications running where each application has at least one window open on a single desktop displayed on a single display device. In a simple example, a doctor or a technician analyzing X-Rays on a monitor may have a first set of windows of a medical application open with X-ray images, another window open with a Word™ document, and a window with Acrobat Reader™. In most operating systems, a single window is selected as being active and is placed in the forefront of the screen, the other windows being in the background.
In this context, each window is independent and may display a different type of data. It may be desired to apply a certain transformation, such as a given contrast or a gamma correction, to the data displayed in one window, without affecting the data displayed in the other windows. For example, in order to make an accurate diagnosis and analysis the user may need to apply a transformation on the window including the X-Ray images without modifying the data displayed in the other windows (e.g. Word™ document or Acrobat Reader™ document). Furthermore, the user may want to open a plurality of images and perform a different transformation on each image to highlight different characteristic of the image.
These types of transformations are typically done in a graphics processing system or by software. Graphics processing systems are configured to apply a same transformation to an entire image displayed on a single screen. This does not allow one window to be treated independently from the other windows. Software applications may process data for each window independently but this is done in a non-efficient manner requesting a huge amount of processing time from the central processing unit of a computer system that cannot process other crucial tasks in the meantime.
There is a need to develop a system and method that would allow each window in a multi-window environment to be treated independently such that transformations may be applied to a single window without affecting other windows.